<?php
namespace App\Common\Lib\Cache\KeyDB\Db\DbBase;

use App\Common as com;
use App\Common\Lib\Cache\KeyDB\Db\DbBase\DataOperation as nameDataOperation;

class DataOperation extends com\Lib\LibBase {

	// ===============================
	//
	//
	// 下面为静态方法
	//
	//
	// ===============================

	/**
	 * 读取
	 * @param mixed $keyDbData 数据
	 * @param string|null $keyDbPath 数组路径（支持格式：1.PHP数组访问的格式，如：['a'][0]['b']， 2."->"分割，如：a->b->c）。[null]获取所有
	 * @param mixed $default 默认值。[false][默认]
	 * @return mixed session数据
	 */
	public static function getOfPath( $keyDbData, ?string $keyDbPath, $default = false ) {
		if( $keyDbData === false ){
			return $default;
		}
		//
		if( $keyDbPath !== null ){
			// 检查数据是否存在
			if( ! com\Lib\Fun\Array_::assignPathIsset( $keyDbData, $keyDbPath ) ){
				return $default;
			}
			//
			return com\Lib\Fun\Array_::assignPathRead( $keyDbData, $keyDbPath );
		}else{
			return $keyDbData;
		}
	}

}
